Practical questions such as system design, architecture or building a small web/mobile app or API that does something. Ie: Small app that tells you stock price of a symbol, or weather etc. Edit - Seems you guys are getting caught up on what I mean by "practical". By practical, I mean something similar you'll actually be doing on the job, it doesn't necessarily have to be building API's or apps. It can be anything. Are you interviewing for a full stack web developer? Practical to me would be "build me a web app". Are you interviewing for an internal tool position? Practical would be "here's an internal library, it's slow, improve it for me" #interview
I think leetcode is harder, definitely harder than just learning some framework or language. Maybe it’s good to use something hard to evaluate candidates, no?
Why not use something hard that the job actually does, rather than CS trivia questions? When lawyers interview, they don’t get asked bar exam questions.
Because hard things at the job take a long time and also there is confidential things right? Like I can’t ask a candidate to build a web service that serves a billion people just to see if you can work at Facebook. And LC is not CS trivia question, they are questions based on CS fundamentals. Trivia question requires more memory than skill, LC questions require more skill than memory.
Building a small CRUD app isn’t a good practical interview. Unless you’re a small startup or are hiring for a fast iteration product role, it’s testing if you know language frameworks. You’d get stronger signals from recent bootcamp grads than hardcore backend engineers. Not trying to knock on boot camps I always thought iterative, ood+algo interviews were practical and catch the right signals. Sys design is obviously important but shouldn’t be fighting against leetcode like you phrased it since they’re looking for different skills
What would you consider a good practical interview then?
You can't normalise the process of evaluating the quality of APIs or apps. In a company with 50k employees, it will become extremely subjective. But an LC questions (although unrelated to most situations at work) could be easily normalised on a large scale. It's also a good measure for your work ethic and commitment, i.e. are you willing to dedicate time to your practice and do the hard work? most of the time that's all you need from an employee. Outliers who are very smart and can get away with minimal practice are also welcome because they will most likely get work done in similar fashion, which is fine
Doesn't necessarily have to be about API's or apps, just a question related to the job/team itself.
Domain knowledge is not that important, large companies can afford the time to teach you if you are good enough.
Lc is problem solving, maybe just replace leetcode with how to best solve a problem. Testing on a specific framework is complete bs. The interviewee is supposed to make an app for a particular interview over a weekend ? What if that framework is irrelevant in a few months, does that mean the employee is irrelevant too? Problem solving on the other hand, is far too generic - even though it has its faults, but on a probabilities scale you would have hired better engineers over a longer period of time with the problem solving approach. Majority of the Engineers who faked it though would be burned out, stressed out, piped anyways, so In the longer run you would have amassed a better set of engineering talent.
I agree with your comment. I don't think my question was well understood, I didn't mean be interviewed on a specific framework. I edited.
Leetcode works more efficiently when hiring at scale so what kind of practical interview can work better?
60 minute interview. "Build me this, I'll let you use whatever you want". "Why did you choose to use that?" "How well will it scale? ' etc. etc.
What is "this" ? Can you give an example of something that could work for multiple roles? Especially if they hire generalists but each team has it's own purposes
i’d rather leetcode than having to learn some random language or tech stack and be tied to it my entire life. What happen if you had to take a, let’s say .net job right out of school, now you want to work for google but instead of Lc which is language agnostic they make learn angular, go, etc (generalizing since i don’t work there) and test your knowledge on it. Are you a worse developer because you didn’t start out with that stack?
Why does a practical interview need to be language/framework specific? Ie "Build me a an api that does xyz, use whatever you want"
People who cannot code can still BS their way through system design chats. Doing at least an Easy LC is a very important safety check on a potential hire.
Why only have a chat? Why not have them also implement the design?
Difficult to do that at scale. That's a high-effort interview if you sit with the candidate and a big cheating risk if you don't.
Leet code is for children
Leetcode is an outdated concept.
Why does FAANG/MANGA and other still do it then?
Too much lift is required to change the interview process. That’s why new companies like Plaid can do it, but the old ones will need a decade or so to move away from Leetcode.